// 基础代码模块
import './style/adminlte.min.css'
import './style/app.css'

// 是否登录校验
import { storageUtils } from './utils/storageUtils'
import { reqUserInfo } from './api'
;(async () => {
    const hasToken = !!storageUtils.getToken() // 判断是否有token
    const hasUser = !!storageUtils.getUser() // 判断是否已经登录
    const isLoginPage = window.location.href.includes('/login.html') // 判断是否是登录页面

    // 如果有token
    if (hasToken) {
        // 如果要访问是登陆页面, 跳转去用户列表页面
        if (isLoginPage) {
            window.location = '/users.html'
        } else {
            // 要去的是管理页面
            // 如果当前还没有登陆, 请求获取用户信息
            if (!hasUser) {
                const result = await reqUserInfo()
                const user = result.data
                // 保存user
                storageUtils.setUser(user)
            }
        }
    } else {
        // 如果没有token
        // 如果访问不是登陆页面, 跳转去登陆页面
        if (!isLoginPage) {
            window.location = '/login.html'
        }
    }
})()
